#ifndef RIVIAMAINFRAME_H
#define RIVIAMAINFRAME_H

#include <QMainWindow>

class CentralWidget;
class Tools;
class StatusBar;
class MenuBar;
class ToolOptionsDock;
class BrushesDock;
class LayersDock;
class ChannelsDock;
class PaletteDock;

class RIVIAMainFrame : public QMainWindow
{
    Q_OBJECT

public:
    RIVIAMainFrame(QWidget *parent = 0);
    ~RIVIAMainFrame();

public slots:
    void CloseMainWindow();

private:
    void initCentralWidget();
    void initToolBar();
    void initStatusBar();
    void initMenuBar();
    void initSettingDock();

    void connetSignalToSlots();
    virtual void changeEvent(QEvent *event);
    void initTrans();

private:
    CentralWidget* m_pCentralWidget;
    Tools* m_pTools;
    StatusBar* m_pStatusBar;
    MenuBar* m_pMenuBar;
    ToolOptionsDock* m_pToolOptionsDock;
    BrushesDock* m_pBrushesDock;
    LayersDock* m_pLayersDock;
    ChannelsDock* m_pChannelsDock;
    PaletteDock* m_pPaletteDock;
};

#endif // RIVIAMAINFRAME_H
